#!/bin/bash

echo "=========================================="
echo "  从 Gitee 拉取并部署 JS工具集"
echo "=========================================="
echo ""

# 配置变量（请修改为你的 Gitee 仓库地址）
GITEE_REPO="https://gitee.com/xiaogangg/js-tools.git"
PROJECT_DIR="/root/js-tools"

# 检查 Git 是否安装
if ! command -v git &> /dev/null; then
    echo "❌ 未检测到 Git，正在安装..."
    yum install -y git || apt-get install -y git
fi

# 检查 Docker 是否安装
if ! command -v docker &> /dev/null; then
    echo "❌ 未检测到 Docker，请先安装 Docker"
    exit 1
fi

echo "📥 从 Gitee 拉取代码..."

# 如果目录已存在，先删除
if [ -d "$PROJECT_DIR" ]; then
    echo "🗑️  删除旧目录..."
    rm -rf "$PROJECT_DIR"
fi

# 克隆仓库
git clone "$GITEE_REPO" "$PROJECT_DIR"

if [ $? -ne 0 ]; then
    echo "❌ 代码拉取失败！请检查："
    echo "   1. Gitee 仓库地址是否正确"
    echo "   2. 仓库是否为公开或已配置 SSH 密钥"
    exit 1
fi

echo "✅ 代码拉取成功！"
echo ""

# 进入项目目录
cd "$PROJECT_DIR"

# 停止并删除旧容器
echo "🛑 停止旧容器..."
docker stop js-tools-web 2>/dev/null
docker rm js-tools-web 2>/dev/null

# 删除旧镜像
echo "🗑️  删除旧镜像..."
docker rmi js-tools:latest 2>/dev/null

# 构建镜像
echo "🔨 构建 Docker 镜像..."
docker build -t js-tools:latest .

if [ $? -ne 0 ]; then
    echo "❌ 镜像构建失败！"
    exit 1
fi

echo "✅ 镜像构建成功！"
echo ""

# 启动容器
echo "🚀 启动容器..."
docker run -d \
  -p 8080:80 \
  --name js-tools-web \
  --restart=unless-stopped \
  js-tools:latest

if [ $? -eq 0 ]; then
    echo ""
    echo "=========================================="
    echo "✅ 部署完成！"
    echo "=========================================="
    echo ""
    echo "🌐 访问地址: http://你的IP:8080"
    echo ""
    echo "📋 管理命令:"
    echo "  查看日志: docker logs -f js-tools-web"
    echo "  停止容器: docker stop js-tools-web"
    echo "  重启容器: docker restart js-tools-web"
    echo "  更新代码: ./从Gitee部署.sh"
    echo ""
else
    echo "❌ 容器启动失败！"
    exit 1
fi
